package com.atguigu.gulimall.coupon;

import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;

/**
 * 一配置中心配置
 * 1.引入依赖
 * 2.创建一个bootstrap.properties
 * spring.application.name=gulimall-coupon
 * spring.cloud.nacos.config.server-addr=127.0.0.1:8848
 * 3.给配置中心添加数据集（data id）gulimall-coupon.properties，默认规则，应用名.properties
 * 4.给 应用名.properties添加配置
 * coupon.user.name=lisi
 * coupon.user.age=22
 * 5.动态获取配置
 * @RefreshScope 动态获取并刷新配置
 * @Value("${coupon.user.name}")
 * 优先采用配置中心的配置
 *二 细节
 * 2.1 命名空间 配置隔离
 * 默认public：默认新增的所有配置都在public
 * 1 开发，测试，生产：利用命名空间来做环境隔离
 * 注意：在bootstrap.properties里加上命名空间配置
 * spring.cloud.nacos.config.namespace=9a65623a-7211-4f14-9ab4-1bc314aed906
 * 2 每一个微服务创建一个命名空间coupon，member，order，，，
 *
 * 2.2 配置集：所有配置的集合
 * 2.3 配置集ID  data Id
 * 2.4 配置分组  默认dafault_group
 * 在bootstrap.properties里加上命名空间配置和分组配置
 * spring.cloud.nacos.config.namespace.group=dev/test/prod
 *
 * 三 同时加载多个配置集
 *3.1 微服务任何配置都可以放在配置中心
 * 3.2 只需要在bootstrap.properties中说明加载文件即可
 * 3.3 @value @Configproperties
 * 以前springboot任何方法从配置中心获取值都可以使用
 * 优先使用配置中心的值
 */
@SpringBootApplication
@EnableDiscoveryClient
public class GulimallCouponApplication {

    public static void main(String[] args) {
        SpringApplication.run(GulimallCouponApplication.class, args);
    }

}
